home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Medal Software 3
/
Gold Medal Software - Volume 3 (Gold Medal) (1994).iso
/
os2
/
objfac.arj
/
CLSSNOTE.HLP
(
.txt
)
< prev
next >
Wrap
OS/2 Help File
|
1994-03-05
|
32KB
|
1,204 lines
ΓòÉΓòÉΓòÉ 1. Help for Compiler Options Page 1 ΓòÉΓòÉΓòÉ
This page helps you configure the SOM compiler for operation. Select one of
the following to get help for a particular option on this page.
SOM Compiler Directory
SOM Compiler Version
Include Directory
Output Directory
OIDL Filename
Comment Buffer Size
String Space Size
ΓòÉΓòÉΓòÉ 2. Help for SOM Compiler Directory ΓòÉΓòÉΓòÉ
SOM Compiler Directory (REQUIRED)
Description
This field allows the notebook to find the SOM compiler executable in your
system.
What to Enter
Enter the fully qualified directory path to the SOM compiler. The SOM
compiler's executable filename is "SC.EXE".
Error Checking
If an invalid path is entered, the entry is deleted and the previously entered
path is redisplayed.
Possible Compilation Errors
If the SOM compiler is not located in this directory, an error will occur when
you compile this class.
ΓòÉΓòÉΓòÉ 3. Help for SOM Compiler Version ΓòÉΓòÉΓòÉ
SOM Compiler Version (REQUIRED)
Description
These radio buttons define which version of the SOM compiler is being
referenced by the SOM compiler directory field. Select the radiobutton
corresponding to the version of the SOM compiler you are using.
ΓòÉΓòÉΓòÉ 4. Help for Include Directory ΓòÉΓòÉΓòÉ
Include Directory (REQUIRED)
Description
This field allows the SOM compiler to locate any include files needed for
compilation.
What to Enter
Enter one or more fully qualified paths separated by semicolons to allow the
SOM compiler to locate include files. Typical locations that need to be
included are the location of SOM "*.SC" files and the location of your include
files for this class.
Error Checking
No error checking is done in this field.
Possible Compilation Errors
If any include files cannot be located during compilation, SOM will generate
missing file errors.
ΓòÉΓòÉΓòÉ 5. Help for Output Directory ΓòÉΓòÉΓòÉ
Output Directory (REQUIRED)
Description
This field contains the directory where all SOM emitted files will be placed.
What to Enter
Enter a fully qualified directory path.
Error Checking
If an invalid path is entered, the entry is deleted and the previously entered
path is redisplayed.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field.
ΓòÉΓòÉΓòÉ 6. Help for OIDL Filename ΓòÉΓòÉΓòÉ
OIDL Filename (REQUIRED)
Description
This field contains the filename of the generated OIDL filename. The OIDL file
is generated by the notebook as part of the SOM compilation process.
The OIDL file is a SOM source file and should be backed up faithfully. If this
class notebook were accidentally destroyed, you could re-enter the class
definition from this file into another class notebook.
What to Enter
Enter a unique filename.
Error Checking
If no file extension is entered, the extension ".CSC" is automatically appended
to your entry. You may use other extensions, although the use of ".CSC" is
HIGHLY recommended.
Possible Compilation Errors
If the filename you select already exists in the output directory, the file
will be overwritten. If the file is in use by another process, an error will
occur.
ΓòÉΓòÉΓòÉ 7. Help for Comment Buffer Size ΓòÉΓòÉΓòÉ
Comment Buffer Size (optional)
Description
This field defines this total size of the SOM comment buffer.
What to Enter
Enter a numeric value for the comment buffer size. The default value is
normally sufficient.
Error Checking
If a non-numeric value is entered, the entry is erased and the previous value
is displayed.
Possible Compilation Errors
SOM will display an error message if this value is not correct.
ΓòÉΓòÉΓòÉ 8. Help for String Space Size ΓòÉΓòÉΓòÉ
String Space Size (optional)
Description
This field defines this total size of the SOM string space used for passthru
lines and names.
What to Enter
Enter a numeric value for the string space size. The default value is normally
sufficient.
Error Checking
If a non-numeric value is entered, the entry is erased and the previous value
is displayed.
Possible Compilation Errors
SOM will display an error message if this value is not correct.
ΓòÉΓòÉΓòÉ 9. Help for Compiler Options Page 2 ΓòÉΓòÉΓòÉ
This page allows you to select which files the SOM compiler generates. If a
particular item is checked, that file will be generated when you compile the
class.
The version of SOM you select on the first page of this section determines
which set of checkboxes is activated.
At least 1 option MUST be checked. If you try to uncheck the last checked
item, that item will be automatically re-checked.
ΓòÉΓòÉΓòÉ 10. Help for Compiler Options Page 3 ΓòÉΓòÉΓòÉ
This page allows you to access miscellaneous SOM compiler options. Select one
of the following to get help for a particular option on this page.
Suppress Warning Messages
Verify Release Order Entries
Display Version
Generate IBM C Set/2 Pragmas
ΓòÉΓòÉΓòÉ 11. Help for Suppress Warning Messages ΓòÉΓòÉΓòÉ
Suppress Warning Messages (optional)
Description
This radio button determines whether the SOM compiler will display any warning
messages during compilation.
Check this button to not display warnings, uncheck it to see all SOM warnings
during compilation.
ΓòÉΓòÉΓòÉ 12. Help for Verify Release Order Entries ΓòÉΓòÉΓòÉ
Verify Release Order Entries (optional)
Description
This radio button determines whether the SOM compiler will verify all release
order entries during compilation. Any variances that SOM finds will be
displayed.
Check this button to verify all release order entries, uncheck it to disable
release order verification.
ΓòÉΓòÉΓòÉ 13. Help for Display Version ΓòÉΓòÉΓòÉ
Display Version (optional)
Description
This radio button determines whether the SOM compiler will display the version
information of its emitter programs during compilation.
Check this button to display version information, uncheck it to not display
version information.
ΓòÉΓòÉΓòÉ 14. Help for Generate IBM C Set/2 Pragmas ΓòÉΓòÉΓòÉ
Generate IBM C Set/2 Pragmas (optional)
Description
This radio button determines whether the SOM compiler will generate pragmas
specifically intended for IBM's C Set/2 compiler.
Check this button if you are using IBM's C Set/2 compiler, uncheck it if you
are not.
ΓòÉΓòÉΓòÉ 15. Help for Include Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to define include filenames. Select one of the following
to get help for a particular option on this page.
Parent Filename
Metaclass Filename
Ancestor Filename
ΓòÉΓòÉΓòÉ 16. Help for Parent Filename ΓòÉΓòÉΓòÉ
Parent Filename (REQUIRED)
Description
This field contains the filename of the parent class definition file.
What to Enter
Enter the parent class definition filename.
If the class you are defining is an immediate descendant of one of SOM's
classes, then this field will be automatically filled in with the correct
filename.
Error Checking
If no file extension is entered, the extension ".SC" is automatically appended
to your entry. You may use other extensions as required.
Possible Compilation Errors
If the filename you entered cannot be found by the SOM compiler, an error will
result.
ΓòÉΓòÉΓòÉ 17. Help for Metaclass Filename ΓòÉΓòÉΓòÉ
Metaclass Filename (optional)
Description
This field contains the filename of the metaclass definition file.
What to Enter
Enter the metaclass definition filename.
Error Checking
If no file extension is entered, the extension ".SC" is automatically appended
to your entry. You may use other extensions as required.
Possible Compilation Errors
If the filename you entered cannot be found by the SOM compiler, an error will
result.
ΓòÉΓòÉΓòÉ 18. Help for Ancestor Filename ΓòÉΓòÉΓòÉ
Ancestor Filename (optional)
Description
This field is used to enter one or more ancestor filenames.
If more than one ancestor filename is entered into the list, they must appear
in a root-down order.
What to Enter
Enter the ancestor definition filename in the entry field, then push the "Add"
button to add the ancestor filename to the list. To remove an entry, select it
from the list and press "Remove".
Error Checking
If no file extension is entered, the extension ".SC" is automatically appended
to your entry. You may use other extensions as required.
Pressing "Add" or "Remove" without an item entered or selected will generate an
error message.
Possible Compilation Errors
If any filename you entered cannot be found by the SOM compiler, an error will
result.
ΓòÉΓòÉΓòÉ 19. Help for Class Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to define your new class. Select one of the following to
get help for a particular option on this page.
Class Name
File Stem
External Stem
Function Prefix
External Prefix
ΓòÉΓòÉΓòÉ 20. Help for Class Name ΓòÉΓòÉΓòÉ
Class Name (REQUIRED)
Description
This field is used to enter the name of your new class.
What to Enter
Enter a unique class name.
Error Checking
No error checking is done on this field.
Possible Compilation Errors
If no class name is entered, an error will result and you will not be able to
invoke the SOM compiler.
ΓòÉΓòÉΓòÉ 21. Help for File Stem ΓòÉΓòÉΓòÉ
File Stem (optional)
Description
This field is used in generating filenames for emitted SOM files. Emitted
files will be named "FileStem".ext.
What to Enter
Enter the file stem name you want the SOM compiler to use in generating emitted
filenames.
If you have entered an OIDL filename on the class notebook's first page, then
that name will appear automatically as the default. Normally, you would want
the file stem to be the same as your OIDL's file stem.
If you change the OIDL filename, this field will NOT be updated -- you must
update the file stem yourself.
Error Checking
No error checking is done on this field.
Possible Compilation Errors
No SOM compilation errors will occur due to this field, although errors may
occur when compiling the generated C file using your C compiler if an invalid
file stem is entered.
ΓòÉΓòÉΓòÉ 22. Help for External Stem ΓòÉΓòÉΓòÉ
External Stem (optional)
Description
This field is used in generating filenames within emitted SOM files.
What to Enter
Enter the external stem name you want the SOM compiler to use in generating
filenames within emitted files.
If you have entered an OIDL filename on the class notebook's first page, then
that name will appear automatically as the default. Normally, you would want
the external stem to be the same as your OIDL's file stem.
If you change the OIDL filename, this field will NOT be updated -- you must
update the external stem yourself.
Error Checking
No error checking is done on this field.
Possible Compilation Errors
No SOM compilation errors will occur due to this field, although errors may
occur when compiling the generated C file using your C compiler if an invalid
external stem is entered.
ΓòÉΓòÉΓòÉ 23. Help for Function Prefix ΓòÉΓòÉΓòÉ
Function Prefix (optional)
Description
This field is used in generating method function names within emitted SOM
files.
What to Enter
Select the radiobutton next to this option and enter the function prefix you
want the SOM compiler to use in generating function names within emitted files.
Error Checking
No error checking is done on this field.
Possible Compilation Errors
No SOM compilation errors will occur due to this field.
ΓòÉΓòÉΓòÉ 24. Help for External Prefix ΓòÉΓòÉΓòÉ
External Prefix (optional)
Description
This field is used in generating method function names within emitted SOM
files. The difference between this and function prefix is that the generated
methods are forced to be external, which may be needed for debugging purposes.
What to Enter
Select the radiobutton next to this option and enter the external prefix you
want the SOM compiler to use in generating function names within emitted files.
Error Checking
No error checking is done on this field.
Possible Compilation Errors
No SOM compilation errors will occur due to this field.
ΓòÉΓòÉΓòÉ 25. Help for Class Section Page 2 ΓòÉΓòÉΓòÉ
This page allows you to define miscellaneous options for your new class.
Select one of the following to get help for a particular option on this page.
Major Version Number
Minor Version Number
Link Bindings Context
Class Initialization Function
ΓòÉΓòÉΓòÉ 26. Help for Major Version Number ΓòÉΓòÉΓòÉ
Major Version Number (optional)
Description
The major version number is used to verify that any code that purports to
implement this class has the same major version number. If the major version
number is 0, no check is made.
What to Enter
Enter a number 0 to (2**31)-1.
Error Checking
If a non-numeric value is entered, the entry is erased and the previous value
is displayed.
Possible Compilation Errors
No SOM compilation errors will occur due to this field.
ΓòÉΓòÉΓòÉ 27. Help for Minor Version Number ΓòÉΓòÉΓòÉ
Minor Version Number (optional)
Description
The minor version number is used to verify that any code that purports to
implement this class has the same OR HIGHER minor version number. If the minor
version number is 0, no check is made.
What to Enter
Enter a number 0 to (2**31)-1.
Error Checking
If a non-numeric value is entered, the entry is erased and the previous value
is displayed.
Possible Compilation Errors
No SOM compilation errors will occur due to this field.
ΓòÉΓòÉΓòÉ 28. Help for Link Bindings Context ΓòÉΓòÉΓòÉ
Link Bindings Context (optional)
Description
This option indicates how binding files are to be linked together.
Select global to generate statements like: #include <file.h>.
Select local to generate statements like: #include "file.h".
ΓòÉΓòÉΓòÉ 29. Help for Class Initialization Function ΓòÉΓòÉΓòÉ
Class Initialization Function (optional)
Description
This field allows you to define a function to be used in the creation of your
class.
What to Enter
Enter a function name. A template for this function will be automatically
added in the emitted files.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur due to this field.
ΓòÉΓòÉΓòÉ 30. Help for Class Section Page 3 ΓòÉΓòÉΓòÉ
This page allows you to enter an optional description of your new class. Do
NOT enclose your text within comment delimiters. Free-format any text you wish
to appear in emitted files.
ΓòÉΓòÉΓòÉ 31. Help for Release Order Section Page 1 ΓòÉΓòÉΓòÉ
Release Order (optional)
Description
This page allows you to define a release order for your new class. The release
order allows you to add or remove methods or instance variables without having
to recompile programs that use this class.
What to Enter
As new methods or instance variables are added to your class, they will appear
in the appropriate list boxes. Select either a method or instance variable and
double-click or press "Add" to append the item to the end of the release order.
If methods or instance variables are removed from the class after being added
to the release order, they will not be removed from the release order.
To remove an item from the release order, select it from the list and
double-click or press "Remove". The item will be removed and re-inserted into
the appropriate list box.
WARNING: Normally, you should not remove anything once it has been added to the
release order and the class has been compiled. Doing so may cause you to have
to recompile all programs which use this class!!
Error Checking
If you press "Add" or "Remove" without selecting an item, an error message will
be displayed.
Possible Compilation Errors
No SOM compilation errors will occur due to this field.
ΓòÉΓòÉΓòÉ 32. Help for Metaclass Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to define a metaclass for your new class. A metaclass is
a class whose instances are all classes. Select one of the following to get
help for a particular option on this page.
Metaclass Name
Metaclass Description
ΓòÉΓòÉΓòÉ 33. Help for Metaclass Name ΓòÉΓòÉΓòÉ
Metaclass Name (optional)
Description
This field allows you to define a metaclass for your class.
What to Enter
Enter a metaclass name. If you enter a value in this field, you must also
enter a metaclass filename in the include section.
If you leave this field blank, the parent's metaclass will be used.
If you use the class attribute in either the data or methods section, you MUST
leave this field blank -- the implied metaclass will be a subclass of the
parent's metaclass.
Unless you are very familiar with SOM, it is wise to leave this field blank.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
If you use this field and forget to add the metaclass filename to the include
section or use class attributes in either the data or methods section, SOM
compilation errors will result.
ΓòÉΓòÉΓòÉ 34. Help for Metaclass Description ΓòÉΓòÉΓòÉ
Metaclass Description (optional)
Description
This field allows you to describe the purpose of the metaclass.
What to Enter
Free-format any text you need in describing the use of the metaclass. Do NOT
enclose your text within comment delimiters.
Unless you are actually using a metaclass, it is best to leave this field
blank.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field.
ΓòÉΓòÉΓòÉ 35. Help for Parent Class Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to define a parent class for your new class. Select one
of the following to get help for a particular option on this page.
Parent Class Name
Parent Class Description
ΓòÉΓòÉΓòÉ 36. Help for Parent Class Name ΓòÉΓòÉΓòÉ
Parent Class Name (optional)
Description
This field allows you to define a parent class for your class.
What to Enter
Under normal operation, you do not have to enter anything in this field. If
you have dragged this class notebook to a position in the class tree, the
parent class is automatically defined for you.
Instead of entering a value in this field, drag the class notebook to a new
position in the class tree to change this field. Each time you re-position
this notebook in the class tree, this field is automatically updated.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
If no value is defined for this field (i.e. this notebook is not in the class
tree) you will not be able to invoke the SOM compiler.
ΓòÉΓòÉΓòÉ 37. Help for Parent Class Description ΓòÉΓòÉΓòÉ
Parent Class Description (optional)
Description
This field allows you to describe the purpose of the parent class.
What to Enter
Free-format any text you need in describing the use of the parent class. Do
NOT enclose your text within comment delimiters.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field.
ΓòÉΓòÉΓòÉ 38. Help for Passthru Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.H file, which
is the binding file for all users of this class. Select one of the following
to get help for a particular option on this page.
Precede/Follow Includes
Passthru Lines
ΓòÉΓòÉΓòÉ 39. Help for Precede/Follow Includes ΓòÉΓòÉΓòÉ
Precede/Follow Includes (optional)
Description
These radiobuttons allow you to select where in the binding file to add the
passthru lines.
Selecting "Precede" will cause the passthru lines to be placed unaltered BEFORE
all #include statements in the emitted file.
Selecting "Follow" will cause the passthru lines to be placed unaltered AFTER
all #include statements in the emitted file.
ΓòÉΓòÉΓòÉ 40. Help for Passthru Lines ΓòÉΓòÉΓòÉ
Passthru Lines (optional)
Description
This field allows you to include unaltered lines of code to be passed into an
emitted file. The contents of the lines are ignored by the SOM compiler.
What to Enter
Free-format any code you need to include in an emitted file. Comments may be
include using any style you wish.
You may use "shift-delete" and "shift-insert" key sequences to cut and paste
lines in the entry field.
If you have a large block of code to include and do not wish to use the minimal
editing capabilities of the entry field, you may simply add an #include
statement in this field for a file you may create using a different editor.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field. Your C
compiler will generate errors if any coding errors are present in your passthru
lines.
ΓòÉΓòÉΓòÉ 41. Help for Passthru Section Page 2 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.PH file, which
is the binding file for users with access to private methods in this class.
Select one of the following to get help for a particular option on this page.
Precede/Follow Include Statements
Passthru Lines
ΓòÉΓòÉΓòÉ 42. Help for Passthru Section Page 3 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.IH file, which
is the binding file for implementors of this class. Select one of the
following to get help for a particular option on this page.
Precede/Follow Include Statements
Passthru Lines
ΓòÉΓòÉΓòÉ 43. Help for Passthru Section Page 4 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.C file, which
is the program template file for implementing this class. Select one of the
following to get help for a particular option on this page.
Precede/Follow Include Statements
Passthru Lines
ΓòÉΓòÉΓòÉ 44. Help for Passthru Section Page 5 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.SC file, which
is the language-neutral core file for this class. Select one of the following
to get help for a particular option on this page.
Precede/Follow Include Statements
Passthru Lines
ΓòÉΓòÉΓòÉ 45. Help for Passthru Section Page 6 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.PSC file,
which is the language-neutral core file for the private methods of this class.
Select one of the following to get help for a particular option on this page.
Precede/Follow Include Statements
Passthru Lines
ΓòÉΓòÉΓòÉ 46. Help for Passthru Section Page 7 ΓòÉΓòÉΓòÉ
This page allows you to pass unaltered lines directly into the *.CS2 file,
which is a "pretty-printed" version of the OIDL file used in describing this
class. Select one of the following to get help for a particular option on this
page.
Precede/Follow Include Statements
Passthru Lines
ΓòÉΓòÉΓòÉ 47. Help for Data Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to define all instance variables which your class
requires. Select one of the following to get help for a particular option on
this page.
Instance Variable Type and Name
Internal/Private/Public
Class
Data Description
Add/Delete/Clear
ΓòÉΓòÉΓòÉ 48. Help for Instance Variable Type and Name ΓòÉΓòÉΓòÉ
Instance Variable Type and Name (optional)
Description
This field defines the type and name of your instance data variable. ANSI C
syntax should be used.
What to Enter
For example, to define a character variable named "MyChar", enter "char MyChar"
without the quotes in the field.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
You must use a valid variable type or a compilation error will result.
ΓòÉΓòÉΓòÉ 49. Help for Internal/Private/Public ΓòÉΓòÉΓòÉ
Internal/Private/Public (optional)
Description
These radiobuttons define the type of bindings to be exported for a particular
instance variable.
Select "Internal" to prevent ANY bindings from being exported.
Select "Private" to generate bindings for private-usage files.
Select "Public" to generate bindings for public-usage files.
ΓòÉΓòÉΓòÉ 50. Help for Class ΓòÉΓòÉΓòÉ
Class (optional)
Description
This pushbutton defines whether or not the data item belongs to a metaclass.
Checking this button will create a data item which doesn't appear in instances
of the class, but in the class itself. Methods defined with the class
attribute can be used to manipulate class data items.
If you select the class attribute for even one data item, you cannot use the
metaclass section. In this case, the metaclass being used is defined to be the
parent's metaclass.
ΓòÉΓòÉΓòÉ 51. Help for Data Description ΓòÉΓòÉΓòÉ
Data Description (optional)
Description
This field allows you to describe the purpose of the instance variable.
What to Enter
Free-format any text you need in describing the use of the instance variable.
Do NOT enclose your text within comment delimiters.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field.
ΓòÉΓòÉΓòÉ 52. Help for Add/Delete/Clear ΓòÉΓòÉΓòÉ
Add/Delete/Clear (optional)
After defining your instance variable, push "Add" to add it to the instance
variable list. Once a variable has been added, you may select it from the
instance variable list to see that variable's definition.
If you need to delete a variable from the instance variable list, select it and
push "Delete". The variable will be permanently deleted. THIS CANNOT BE
UNDONE!
After viewing an instance variable's information, if you need to enter a new
variable you may press "Clear" to clear all entry fields and reset all options
to their default state. If you have to enter many similar data items, this may
be unnecessary.
ΓòÉΓòÉΓòÉ 53. Help for Methods Section Page 1 ΓòÉΓòÉΓòÉ
This page allows you to define all new methods which your class requires.
Select one of the following to get help for a particular option on this page.
New Method Type and Name
Method Parameters
Method Description
Public/Private
Method/Procedure
Offset/Name Lookup
Class
Class Prefix
Add/Delete/Clear
ΓòÉΓòÉΓòÉ 54. Help for New Method Type and Name ΓòÉΓòÉΓòÉ
New Method Type and Name (optional)
Description
This field defines the type and name of your new method. ANSI C syntax should
be used.
What to Enter
For example, to define a method named "AddMe" that returns an integer result,
enter "int AddMe" without the quotes in the field.
Always include the "void" keyword for methods which return nothing.
You may enter a comment in this field by prefacing the text with 2 dashes.
This allows you to organize your methods in the list box. This makes it easier
for subclasses to overridde this class' methods. This is HIGHLY recommended!!
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
You must use a valid type or a compilation error will result.
ΓòÉΓòÉΓòÉ 55. Help for Method Parameters ΓòÉΓòÉΓòÉ
Method Parameters (optional)
Description
This field defines the type and name of all parameters your new method
requires. ANSI C syntax should be used.
What to Enter
For example, if your method requires three parameters, enter them as "char
Data, void *Ptr, HWND hwndWindow".
Separate all method parameters with commas. Optionally, you may enter a return
after each parameter to improve readability.
You may precede each parameter with IN, INOUT, or OUT to indicate it is an
input, input/output, or output parameter.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
You must use valid parameter types and separate all parameters with commas or
compilation errors will result.
ΓòÉΓòÉΓòÉ 56. Help for Method Description ΓòÉΓòÉΓòÉ
Method Description (optional)
Description
This field allows you to describe the purpose of your new method.
What to Enter
Free-format any text you need in describing the use of the method. Do NOT
enclose your text within comment delimiters.
Using a descriptive description makes overriding this class' methods easier and
is HIGHLY recommended!!
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field.
ΓòÉΓòÉΓòÉ 57. Help for Public/Private ΓòÉΓòÉΓòÉ
Public/Private (optional)
Description
These radiobuttons define the type of bindings to be exported for your method.
Select "Public" to generate bindings for public-usage files.
Select "Private" to generate bindings for private-usage files.
ΓòÉΓòÉΓòÉ 58. Help for Method/Procedure ΓòÉΓòÉΓòÉ
Method/Procedure (optional)
Description
These radiobuttons determine whether or not this method can be overridden by a
subclass.
Select "Method" for methods which can be overridden by subclasses.
Select "Procedure" for methods which cannot be overridden by subclasses.
ΓòÉΓòÉΓòÉ 59. Help for Offset/Name Lookup ΓòÉΓòÉΓòÉ
Offset/Name Lookup (optional)
Description
These radiobuttons determine the invocation bindings to be used for your
method.
Select "Offset" if the class of the method's target object is known at compile
time.
Select "Name Lookup" if the method is introduced by several classes, and the
method's target object is not known at compile time.
ΓòÉΓòÉΓòÉ 60. Help for Class ΓòÉΓòÉΓòÉ
Class (optional)
Description
This pushbutton defines whether or not the method operates on instances of the
class or on the class itself.
Checking this button will create a method which doesn't operate on instances of
the class, but on the class itself. Methods defined with the class attribute
can be used to manipulate class data items.
If you select the class attribute for even one method, you cannot use the
metaclass section. In this case, the metaclass being used is defined to be the
parent's metaclass. Also, you MUST include a class prefix.
ΓòÉΓòÉΓòÉ 61. Help for Class Prefix ΓòÉΓòÉΓòÉ
Class Prefix (optional)
Description
This field defines a prefix to be used in constructing class methods. This
field is enabled only when the "Class" checkbox is checked.
What to Enter
If you create a new method to operate on classes, you must check the "Class"
checkbox and enter a prefix in this field. Only one class prefix is required
for all class methods.
If you create a class method, you must not use the metaclass section.
Error Checking
If you check the Class checkbox and forget to provide a class prefix before
pressing "Add", an error message will be displayed.
Possible Compilation Errors
You must include the class prefix when creating class methods or compilation
errors will result.
ΓòÉΓòÉΓòÉ 62. Help for Add/Delete/Clear ΓòÉΓòÉΓòÉ
Add/Delete/Clear (optional)
After defining your method, push "Add" to add it to the new method list.
Once a method has been added, you may select it from the method list to see
that method's definition.
If you need to delete a method from the method list, select it and push
"Delete". The method will be permanently deleted. THIS CANNOT BE UNDONE!
After viewing a method's information, if you need to enter a new method you may
press "Clear" to clear all entry fields and reset all options to their default
state. If you have to enter many similar methods, this may be unnecessary.
ΓòÉΓòÉΓòÉ 63. Help for Methods Section Page 2 ΓòÉΓòÉΓòÉ
This page allows you to define all overridden methods which your class
requires. Select one of the following to get help for a particular option on
this page.
Overridden Method Name
Known Parent Methods
Method Description
Public/Private
Class
Class Prefix
Add/Delete/Clear
ΓòÉΓòÉΓòÉ 64. Help for Overridden Method Name ΓòÉΓòÉΓòÉ
Overridden Method Name (optional)
Description
This field defines the name of an overridden method.
What to Enter
Enter the name of a method defined in one of your class' parents. If the
method is found, when you compile your class a method stub will appear in your
source file.
Normally, you do not need to enter a value in this field. All known parent
methods are presented for you in a list box for easy selection.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
If you enter a method that is not in one of the parents, SOM will generate a
compile error.
ΓòÉΓòÉΓòÉ 65. Help for Known Parent Methods ΓòÉΓòÉΓòÉ
Known Parent Methods (optional)
Description
This list box contains the names of all known parent methods.
What to Enter
Select the name of a method which interests you. That method's description and
attributes will be presented for you.
To override a parent method, either double-click on the parent method name or
press the "Add" button.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
In the unlikely event that the selected method cannot be found during
compilation, SOM will generate a compile error.
ΓòÉΓòÉΓòÉ 66. Help for Method Description ΓòÉΓòÉΓòÉ
Method Description (optional)
Description
This field allows you to describe the purpose of overriding a method.
What to Enter
Free-format any text you need in describing the use of the overridden method.
Do NOT enclose your text within comment delimiters.
Error Checking
No error checking is performed for this field.
Possible Compilation Errors
No SOM compilation errors will occur as a result of this field.
ΓòÉΓòÉΓòÉ 67. Help for Public/Private ΓòÉΓòÉΓòÉ
Public/Private (optional)
Description
These radiobuttons define the type of method being overridden.
Select "Public" to override a public method.
Select "Private" to override a private method.
ΓòÉΓòÉΓòÉ 68. Help for Class ΓòÉΓòÉΓòÉ
Class (optional)
Description
This pushbutton defines whether or not the overridden method operates on
instances of the class or on the class itself.
Checking this button will override a method which doesn't operate on instances
of the class, but on the class itself. Methods defined with the class
attribute can be used to manipulate class data items.
ΓòÉΓòÉΓòÉ 69. Help for Class Prefix ΓòÉΓòÉΓòÉ
Class Prefix (optional)
Description
This field defines a prefix to be used in constructing class methods. This
field is enabled only when the "Class" checkbox is checked.
What to Enter
If you override a method which operates on classes, you must check the "Class"
checkbox and enter a prefix in this field. Only one class prefix is required
for all class methods.
If you override a class method, you must not use the metaclass section.
Error Checking
If you check the Class checkbox and forget to provide a class prefix before
pressing "Add", an error message will be displayed.
Possible Compilation Errors
You must include the class prefix when overriding class methods or compilation
errors will result.
ΓòÉΓòÉΓòÉ 70. Help for Add/Delete/Clear ΓòÉΓòÉΓòÉ
Add/Delete/Clear (optional)
After defining the overridden method, push "Add" to add it to the overridden
method list. If the method was in the known parent methods list box, it will
be removed.
Once a method has been added, you may select it from the overridden method list
to see that method's definition.
If you need to delete a method from the overridden method list, select it and
push "Delete". If the method was in the known parent methods list box, it will
be re-added. Otherwise, it will be deleted.
After viewing an overridden method's information, if you need to override
another method you may press "Clear" to clear all entry fields and reset all
options to their default state. This is unnecessary if you are only overriding
known parent methods.